/**
 * @Author: 健聪
 * @Description: Mixins 类
 * @Date: 2024/1/30
 */

// class A{
//   void a(){
//     print("A.a()...");
//   }
// }
//
// mixin B{
//   void a(){
//     print("B.a()...");
//   }
//   void b(){
//     print("B.b()...");
//   }
// }
//
// mixin C {
//   void a(){
//     print("C.a()...");
//   }
//   void b(){
//     print("C.b()...");
//   }
//   void c(){
//     print("C.c()...");
//   }
// }

// class D extends A with B, C{
//
// }

// void main() {
//   // var d = new D();
//   // d.a();
// }

abstract class Engine {
  void work();
}

mixin OilEngine implements Engine {
  @override
  void work() {
    print("OilEngine is Oil...");
  }
}

mixin ElectricEngine implements Engine {
  @override
  void work() {
    print("Work with Electric...");
  }
}

class Tyre {
  String? name;

  void run() {

  }
}
// 电动车
class Car = Tyre with ElectricEngine;
// 公共汽车
class Bus = Tyre with OilEngine;
